Surface ExtendFace/it

Other languages:

Surface ExtendFace

Posizione nel menu
Surface → Extend face
Ambiente
Surface
Avvio veloce
Nessuno
Introdotto nella versione
0.17
Vedere anche
Nessuno

Descrizione

Surface ExtendFace estrapola una faccia o una superficie esistente dai bordi con i suoi parametri U e V locali.

Left: original face. Right: extended face.

Usage

  1. Make sure you have an object that has faces. The object could be created with the Surface Workbench but it could also be any other object, for example, created with Part or PartDesign.
  2. Select the face to extend by clicking on it on the 3D view.
  3. Press Extend face.

Options

This command doesn't have any options. Either it works with the selection or not.

Properties

A Surface Extend object (Surface::Extend class) is derived from the basic Part Feature (Part::Feature class, through the Part::Spline subclass), therefore it shares all the latter's properties.

In addition to the properties described in Part Feature, the Surface Filling has the following properties in the property editor.

Data

Base

View

Base

Scripting

See also: FreeCAD Scripting Basics.

The Surface Extend tool can be used in macros and from the Python console by adding the Surface::Extend object.

import FreeCAD as App
import Draft

doc = App.newDocument()

a = App.Vector(-20, -20, 0)
b = App.Vector(-18, 25, 0)
c = App.Vector(60, 26, 0)
d = App.Vector(33, -20, 0)

points = [a, App.Vector(-20, -8, 0), b, c,
          App.Vector(37, 4, 0), d,
          App.Vector(-2, -18, 0), a]
obj = Draft.make_bspline(points)
doc.recompute()

if App.GuiUp:
    obj.ViewObject.Visibility = False

surf = doc.addObject("Surface::Filling", "Surface")
surf.BoundaryEdges = [(obj, "Edge1")]
doc.recompute()

# ---------------------------------------------------------
points_spl = [App.Vector(-10, 0, 2),
              App.Vector(4, 0, 7),
              App.Vector(18, 0, -5),
              App.Vector(25, 0, 0),
              App.Vector(30, 0, 0)]
aux_edge = Draft.make_bspline(points_spl)
doc.recompute()

surf.UnboundEdges = [(aux_edge, "Edge1")]
doc.recompute()

# ---------------------------------------------------------
surf_extended = doc.addObject("Surface::Extend", "Surface")
surf_extended.Face = [surf, "Face1"]
doc.recompute()